<?php

namespace app\admin\controller;

use think\Controller;
use think\Request;

class Manager extends Base
{
    /**
     * 显示资源列表
     *
     * @return \think\Response
     */
    public function index()
    {
        //
        $data=\app\admin\model\Manager::select();
        return view('index',['data'=>$data]);
    }

    /**
     * 显示创建资源表单页.
     *
     * @return \think\Response
     */
    public function create()
    {
        //
        return view();
    }

    /**
     * 保存新建的资源
     *
     * @param  \think\Request  $request
     * @return \think\Response
     */
    public function save(Request $request)
    {
        // 获取参数username nickname password email
        $params=input();
        // 参数验证
        $rule=[
            'username|用户名'=>'require',
            'nickname|昵称'=>'require',
            'password|密码'=>'require',
            'email|邮箱'=>'email'
        ];
        $res=$this->validate($params,$rule);
        if($res!==true){
            $this->error($res);
        };
        
        $params['password']=encrypt_password($params['password']);
        // 参数添加
        \app\admin\model\Manager::create($params,true);
        $this->success('添加成功','admin/manager/index');
    }

    /**
     * 显示指定的资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function read($id)
    {
        //
    }

    /**
     * 显示编辑资源表单页.
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function edit($id)
    {
        //
        $goods=\app\admin\model\Manager::find($id);
        return view('edit',['goods'=>$goods]);
    }

    /**
     * 保存更新的资源
     *
     * @param  \think\Request  $request
     * @param  int  $id
     * @return \think\Response
     */
    public function update(Request $request, $id)
    {
        // 获取参数
        $params=input();
        // 参数检测
        $rule=[
            'nickname'=>'require',
            'email'=>'email',
            'password'=>'require'
        ];
        $res=$this->validate($params,$rule);
        if($res!==true){
            $this->error($res);
        };
        // 参数修改
        $params['password']=encrypt_password($params['password']);
        \app\admin\model\Manager::update($params,['id'=>$id],true);
        $this->success('修改成功','admin/manager/index');
    }

    /**
     * 删除指定资源
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function delete($id)
    {
        // 获取参数
        $params=input();
        // 参数查询
        $res=\app\admin\model\Manager::where('username','admin')->where('id',$id)->find();
        if(!$res){
        \app\admin\model\Manager::destroy($id);
        $this->success('删除成功','admin/manager/index');
        }
        $this->error('不能删除admin管理员');
    }
}
